package com.bestow.basic.service;

import java.util.List;
import com.bestow.basic.domain.HlsSysFile;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 关联附件Service接口
 * 
 * @author liliu
 * @date 2022-10-05
 */
public interface IHlsSysFileService extends IService<HlsSysFile>
{
    /**
     * 查询关联附件
     * 
     * @param fileId 关联附件主键
     * @return 关联附件
     */
    public HlsSysFile selectHlsSysFileByFileId(Long fileId);

    /**
     * 查询关联附件列表
     * 
     * @param hlsSysFile 关联附件
     * @return 关联附件集合
     */
    public List<HlsSysFile> selectHlsSysFileList(HlsSysFile hlsSysFile);

    /**
     * 新增关联附件
     * 
     * @param hlsSysFile 关联附件
     * @return 结果
     */
    public int insertHlsSysFile(HlsSysFile hlsSysFile);

    /**
     * 修改关联附件
     * 
     * @param hlsSysFile 关联附件
     * @return 结果
     */
    public int updateHlsSysFile(HlsSysFile hlsSysFile);

    /**
     * 批量删除关联附件
     * 
     * @param fileIds 需要删除的关联附件主键集合
     * @return 结果
     */
    public int deleteHlsSysFileByFileIds(Long[] fileIds);

    /**
     * 删除关联附件信息
     * 
     * @param fileId 关联附件主键
     * @return 结果
     */
    public int deleteHlsSysFileByFileId(Long fileId);

    /**
     * 查询关联附件列表通过来源
     *
     * @param sourceType 来源类型
     * @param sourceKey  来源类型key
     * @return 关联附件集合
     */
    public List<HlsSysFile> queryFilesByTypeAndKey(String sourceType, String sourceKey);
}
